home *** CD-ROM | disk | FTP | other *** search
- /* ANSI C code generated by SmallEiffel. */
- /*
- -- SmallEiffel -- Release (- 0.97) -- FRANCE
- -- Copyright (C), 1994 - Dominique COLNET and Suzanne COLLIN
- -- University Henri Poincare' - Nancy 1 - email colnet@loria.fr
- -- CRIN (Centre de Recherche en Informatique de Nancy)
- -- FRANCE
- */
- #include "compile_to_c.h"
- T0 * rT226to_runnable_integer(T226 *C,T0 * a1){
- T0 * R=NULL;
- T0 * _when_item=NULL;
- int _i=0;
- int _ne=0;
- /*IF*/if (!((C)->_when_list)) {
- _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/;
- C->_when_list=a1;
- /*IF*/if (!((C)->_list)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(((T225*)rT226e_inspect(C))->_start_position);
- rT226error((C)->_start_position,(T0 *)ms1234);
- }
- else {
- _i=XrT230lower((C)->_list);
- while (!(((_i)>(XrT230upper((C)->_list)))||(((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))>(0)))) {
- _when_item=XrT228to_runnable_integer(XrT230item((C)->_list,_i),(T0 *)C);
- /*IF*/if (!(_when_item)) {
- rT226error((C)->_start_position,(T0 *)ms1231);
- }
- else {
- XrT230put((C)->_list,_when_item,_i);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*FI*//*IF*/if (((int)(C)->_compound)) {
- C->_compound=rT140to_runnable((T140*)(C)->_compound,rT226current_type(C));
- /*IF*/if (!((C)->_compound)) {
- rT226error((C)->_start_position,(T0 *)ms1231);
- }
- /*FI*/}
- /*FI*/R=(T0 *)C;
- }
- else {
- {T226 *n=((T226*)new(226));
- rT226from_e_when(n,(T0 *)C);
- R=(T0 *)n;}
- R=rT226to_runnable_integer((T226*)R,a1);
- }
- /*FI*/return R;
- }
- T0 * rT226to_runnable_character(T226 *C,T0 * a1){
- T0 * R=NULL;
- T0 * _when_item=NULL;
- int _i=0;
- int _ne=0;
- /*IF*/if (!((C)->_when_list)) {
- _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/;
- C->_when_list=a1;
- /*IF*/if (!((C)->_list)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(((T225*)rT226e_inspect(C))->_start_position);
- rT226error((C)->_start_position,(T0 *)ms1230);
- }
- else {
- _i=XrT230lower((C)->_list);
- while (!(((_i)>(XrT230upper((C)->_list)))||(((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))>(0)))) {
- _when_item=XrT228to_runnable_character(XrT230item((C)->_list,_i),(T0 *)C);
- /*IF*/if (!(_when_item)) {
- rT226error((C)->_start_position,(T0 *)ms1231);
- }
- else {
- XrT230put((C)->_list,_when_item,_i);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*FI*//*IF*/if (((int)(C)->_compound)) {
- C->_compound=rT140to_runnable((T140*)(C)->_compound,rT226current_type(C));
- /*IF*/if (!((C)->_compound)) {
- rT226error((C)->_start_position,(T0 *)ms1231);
- }
- /*FI*/}
- /*FI*/R=(T0 *)C;
- }
- else {
- {T226 *n=((T226*)new(226));
- rT226from_e_when(n,(T0 *)C);
- R=(T0 *)n;}
- R=rT226to_runnable_character((T226*)R,a1);
- }
- /*FI*/return R;
- }
- void rT226error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- T0 * rT226e_inspect(T226 *C){
- T0 * R=NULL;
- R=((T231*)(C)->_when_list)->_e_inspect;
- return R;
- }
- int rT226use_current(T226 *C){
- int R=0;
- /*IF*/if (((int)(C)->_compound)) {
- R=rT140use_current((T140*)(C)->_compound);
- }
- /*FI*/return R;
- }
- T0* rT226clone(T226 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- void rT226from_e_when(T226 *C,T0 * a1){
- T0 * _when_item=NULL;
- int _i=0;
- C->_start_position=((T226*)a1)->_start_position;
- C->_list=rT226clone(C,((T226*)a1)->_list);
- _i=XrT230lower((C)->_list);
- while (!((_i)>(XrT230upper((C)->_list)))) {
- _when_item=rT226clone(C,XrT230item((C)->_list,_i));
- XrT228clear_e_when(_when_item);
- XrT230put((C)->_list,_when_item,_i);
- _i=(_i)+(1);
- }
- C->_header_comment=((T226*)a1)->_header_comment;
- C->_compound=((T226*)a1)->_compound;
- }
- void rT226err_occ(T226 *C,int a1,T0 * a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(((T225*)rT226e_inspect(C))->_start_position);
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms1343);
- /*UT*/(T45*)oRBC27eh;
- rT45append(rT2to_string(a1));
- rT226error(a2,(T0 *)ms1344);
- }
- void rT226compile_to_c(T226 *C,int a1){
- int _bs=0;
- int _bi=0;
- int _go_next_when=0;
- int _go_start_when=0;
- /*IF*/if (((int)(C)->_values)) {
- _go_start_when=rT40new_goto((T40*)oRBC27cpp);
- _bi=((T276*)(C)->_values)->_lower;
- while (!((_bi)>(((T276*)(C)->_values)->_upper))) {
- _bs=(_bi)+(1);
- while (!(((_bs)>(((T276*)(C)->_values)->_upper))||(!(rT276item((T276*)(C)->_values,_bs))))) {
- _bs=(_bs)+(1);
- }
- _bs=(_bs)-(1);
- /*IF*/if ((_bi)==(_bs)) {
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1288);
- rT40put_integer((T40*)oRBC27cpp,_bi);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1289);
- rT40put_inspect((T40*)oRBC27cpp);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1290);
- rT40put_goto((T40*)oRBC27cpp,_go_start_when);
- }
- else {
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1293);
- rT40put_integer((T40*)oRBC27cpp,_bi);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1294);
- rT40put_inspect((T40*)oRBC27cpp);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1295);
- rT40put_inspect((T40*)oRBC27cpp);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1296);
- rT40put_integer((T40*)oRBC27cpp,_bs);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1297);
- rT40put_goto((T40*)oRBC27cpp,_go_start_when);
- }
- /*FI*/_bi=(_bs)+(1);
- while (!(((_bi)>(((T276*)(C)->_values)->_upper))||(rT276item((T276*)(C)->_values,_bi)))) {
- _bi=(_bi)+(1);
- }
- }
- _go_next_when=rT40new_goto((T40*)oRBC27cpp);
- rT40put_goto((T40*)oRBC27cpp,_go_next_when);
- rT40put_goto_label((T40*)oRBC27cpp,_go_start_when);
- /*IF*/if (((int)(C)->_compound)) {
- rT140compile_to_c((T140*)(C)->_compound);
- }
- /*FI*/rT40put_goto((T40*)oRBC27cpp,a1);
- rT40put_goto_label((T40*)oRBC27cpp,_go_next_when);
- }
- /*FI*/}
- void rT226copy(T226 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT226includes_integer(T226 *C,int a1){
- int R=0;
- R=((((int)(C)->_values))&&(rT276valid_index((T276*)(C)->_values,a1)))&&(rT276item((T276*)(C)->_values,a1));
- return R;
- }
- void rT226add_slice(T226 *C,T0 * a1,T0 * a2){
- T0 * _element=NULL;
- {T233 *n=((T233*)new(233));
- rT233make(n,a1,a2);
- _element=(T0 *)n;}
- /*IF*/if (!((C)->_list)) {
- C->_list=ma(234,0,1,_element);
- }
- else {
- XrT230add_last((C)->_list,_element);
- }
- /*FI*/}
- void rT226add_value(T226 *C,T0 * a1){
- T0 * _element=NULL;
- {T227 *n=((T227*)new(227));
- /*(IRF3*/((n)->_expression)=(a1);
- /*)*/_element=(T0 *)n;}
- /*IF*/if (!((C)->_list)) {
- C->_list=ma(229,0,1,_element);
- }
- else {
- XrT230add_last((C)->_list,_element);
- }
- /*FI*/}
- void rT226make(T226 *C,T0 * a1,T0 * a2){
- C->_start_position=a1;
- C->_header_comment=a2;
- }
- void rT226add_when_item_2(T226 *C,T0 * a1){
- int _i=0;
- int _u=0;
- int _l=0;
- _l=((T233*)a1)->_lower_value;
- _u=((T233*)a1)->_upper_value;
- /*IF*/if ((_l)>=(_u)) {
- rT226error(rT233start_position((T233*)a1),(T0 *)ms1348);
- }
- /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
- _i=_l;
- while (!((_i)>(_u))) {
- /*IF*/if (rT225includes((T225*)rT226e_inspect(C),_i)) {
- rT226err_occ(C,_i,rT233start_position((T233*)a1));
- _i=(_u)+(1);
- }
- else {
- _i=(_i)+(1);
- }
- /*FI*/}
- }
- /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
- /*IF*/if (!((C)->_values)) {
- {T276 *n=((T276*)new(276));
- rT276make(n,_l,_u);
- C->_values=(T0 *)n;}
- rT276set_all_with((T276*)(C)->_values,1);
- }
- else {
- rT276force((T276*)(C)->_values,1,_l);
- rT276force((T276*)(C)->_values,1,_u);
- rT276set_slice_with((T276*)(C)->_values,1,_l,_u);
- }
- /*FI*/}
- /*FI*/}
- void rT226add_when_item_1(T226 *C,T0 * a1){
- int _v=0;
- _v=((T227*)a1)->_expression_value;
- /*IF*/if (rT225includes((T225*)rT226e_inspect(C),_v)) {
- rT226err_occ(C,_v,rT227start_position((T227*)a1));
- }
- else if (!((C)->_values)) {
- {T276 *n=((T276*)new(276));
- rT276make(n,_v,_v);
- C->_values=(T0 *)n;}
- rT276put((T276*)(C)->_values,1,_v);
- }
- else {
- rT276force((T276*)(C)->_values,1,_v);
- }
- /*FI*/}
- void rT212fatal_error(/*C*/T0* a1){
- rT45fatal_error((T45*)oRBC27eh,a1);
- }
- T0 * rT212first_name(T212 *C){
- T0 * R=NULL;
- R=rT128item((T128*)(C)->_names,1);
- return R;
- }
- T0 * rT212to_run_feature(T212 *C,T0 * a1,T0 * a2){
- T0 * R=NULL;
- {T280 *n=((T280*)new(280));
- rT280make(n,a1,a2,(T0 *)C);
- R=(T0 *)n;}
- return R;
- }
- void rT212error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- void rT212fe_undefine(/*C*/T0 * a1,T0 * a2){
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms483);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT67to_string(a1));
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms484);
- /*UT*/(T45*)oRBC27eh;
- rT45append(((T48*)((T50*)a2)->_base_class_name)->_to_string);
- rT212fatal_error((T0 *)ms485);
- }
- int rT212is_merge_with(T212 *C,T0 * a1,T0 * a2){
- int R=0;
- int _ne=0;
- _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/;
- /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) {
- /*IF*/if ((!((C)->_result_type))||(!(XrT62result_type(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT212error(rT212start_position(C),(T0 *)ms488);
- }
- /*FI*/}
- /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) {
- /*IF*/if ((!((C)->_arguments))||(!(XrT62arguments(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT212error(rT212start_position(C),(T0 *)ms489);
- }
- else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT212error(rT212start_position(C),(T0 *)ms490);
- }
- /*FI*/}
- /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
- /*IF*/if (((int)(C)->_result_type)) {
- /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) {
- rT45error((T45*)oRBC27eh,(T0 *)ms491);
- }
- /*FI*/}
- /*FI*/}
- /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
- /*IF*/if (((int)(C)->_arguments)) {
- /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT212error(rT212start_position(C),(T0 *)ms494);
- }
- /*FI*/}
- /*FI*/}
- /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0);
- return R;
- }
- T0 * rT212start_position(T212 *C){
- T0 * R=NULL;
- R=XrT67start_position(rT212first_name(C));
- return R;
- }
- int rT212use_current(T212 *C){
- int R=0;
- R=XrT206use_current((C)->_langage,(T0 *)C);
- return R;
- }
- void rT212collect_for(T212 *C,int a1){
- /*IF*/if ((a1)==(1001)) {
- /*IF*/if (((int)(C)->_require_assertion)) {
- /*IF*/if (!(rT268fast_has((T268*)oRBC62require_collector,(C)->_require_assertion))) {
- rT268add_last((T268*)oRBC62require_collector,(C)->_require_assertion);
- }
- /*FI*/}
- /*FI*/}
- else {
- /*IF*/if (((int)(C)->_ensure_assertion)) {
- rT157add_into((T157*)(C)->_ensure_assertion,oRBC62assertion_collector);
- }
- /*FI*/}
- /*FI*/}
- int rT212is_cse(T212 *C){
- int R=0;
- R=XrT206is_cse((C)->_langage);
- return R;
- }
- void rT212add_into(T212 *C,T0 * a1){
- T0 * _fn=NULL;
- int _i=0;
- C->_base_class=rT46base_class((T46*)XrT67start_position(rT128item((T128*)(C)->_names,1)));
- _i=1;
- while (!((_i)>(rT128count((T128*)(C)->_names)))) {
- _fn=rT128item((T128*)(C)->_names,_i);
- /*IF*/if (rT61has((T61*)a1,XrT67to_key(_fn))) {
- _fn=XrT62first_name(rT61at((T61*)a1,XrT67to_key(_fn)));
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT67start_position(_fn));
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT67start_position(rT128item((T128*)(C)->_names,_i)));
- rT45error((T45*)oRBC27eh,(T0 *)ms419);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT67to_string(_fn));
- rT45error((T45*)oRBC27eh,(T0 *)ms38);
- }
- else {
- rT61put((T61*)a1,(T0 *)C,XrT67to_key(_fn));
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- T0 * rT212try_to_undefine(T212 *C,T0 * a1,T0 * a2){
- T0 * R=NULL;
- /*IF*/if (XrT67is_frozen(a1)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(rT212start_position(C));
- rT212error(XrT67start_position(a1),(T0 *)ms482);
- rT212fe_undefine(a1,a2);
- }
- else {
- R=rT212try_to_undefine_aux(C,a1,a2);
- /*IF*/if (((int)R)) {
- XrT203set_clients(R,(C)->_clients);
- }
- else {
- rT212fe_undefine(a1,a2);
- }
- /*FI*/}
- /*FI*/return R;
- }
- T0 * rT212try_to_undefine_aux(T212 *C,T0 * a1,T0 * a2){
- T0 * R=NULL;
- {T205 *n=((T205*)new(205));
- rT205from_effective(n,a1,(C)->_arguments,(C)->_result_type,(C)->_require_assertion,(C)->_ensure_assertion,a2);
- R=(T0 *)n;}return R;
- }
- void rT212set_header_comment(T212 *C,T0 * a1){
- /*IF*/if ((((int)a1))&&((rT59count((T59*)a1))>(1))) {
- C->_end_comment=a1;
- }
- /*FI*/}
- int rT212can_hide(T212 *C,T0 * a1,T0 * a2){
- int R=0;
- int _ne=0;
- _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/;
- /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) {
- /*IF*/if ((!((C)->_result_type))||(!(XrT62result_type(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT212error(rT212start_position(C),(T0 *)ms501);
- }
- /*FI*/}
- /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) {
- /*IF*/if ((!((C)->_arguments))||(!(XrT62arguments(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT212error(rT212start_position(C),(T0 *)ms502);
- }
- else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT212error(rT212start_position(C),(T0 *)ms503);
- }
- /*FI*/}
- /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
- /*IF*/if (((int)(C)->_result_type)) {
- /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) {
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms504);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT58run_time_mark(((T260*)a2)->_current_type));
- rT45error((T45*)oRBC27eh,(T0 *)ms505);
- }
- /*FI*/}
- /*FI*/}
- /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
- /*IF*/if (((int)(C)->_arguments)) {
- /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(rT212start_position(C));
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms506);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT58run_time_mark(((T260*)a2)->_current_type));
- rT45error((T45*)oRBC27eh,(T0 *)ms507);
- }
- /*FI*/}
- /*FI*/}
- /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0);
- return R;
- }
- T0 * rT212base_class_name(T212 *C){
- T0 * R=NULL;
- R=((T50*)(C)->_base_class)->_base_class_name;
- return R;
- }
- void rT212copy(T212 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT212set_rescue_compound(T212 *C,T0 * a1){
- /*IF*/if ((((int)a1))&&(/*(IRF4*/0/*)*/)) {
- rT212error(rT212start_position(C),(T0 *)ms402);
- }
- /*FI*/C->_rescue_compound=a1;
- }
- void rT212make_external_routine(T212 *C,T0 * a1,T0* a2){
- C->_langage=a1;
- /*IF*/if (!(a2)) {
- C->_external_name=XrT67to_string(rT212first_name(C));
- }
- else {
- C->_external_name=a2;
- }
- /*FI*/}
- void rT212make_e_feature(T212 *C,T0 * a1,T0 * a2){
- C->_names=a1;
- C->_result_type=a2;
- }
- void rT212make_routine(T212 *C,T0 * a1,T0 * a2,T0 * a3,T0 * a4,T0 * a5){
- rT212make_e_feature(C,a1,NULL);
- C->_header_comment=a4;
- C->_arguments=a2;
- C->_obsolete_mark=a3;
- C->_require_assertion=a5;
- }
- int rT212is_c(T212 *C){
- int R=0;
- R=XrT206is_c((C)->_langage);
- return R;
- }
- void rT212make(T212 *C,T0 * a1,T0 * a2,T0 * a3,T0 * a4,T0 * a5,T0 * a6,T0 * a7,T0* a8){
- rT212make_routine(C,a1,a2,a4,a5,a6);
- C->_result_type=a3;
- rT212make_external_routine(C,a7,a8);
- }
- void rT211fatal_error(/*C*/T0* a1){
- rT45fatal_error((T45*)oRBC27eh,a1);
- }
- T0 * rT211first_name(T211 *C){
- T0 * R=NULL;
- R=rT128item((T128*)(C)->_names,1);
- return R;
- }
- T0 * rT211to_run_feature(T211 *C,T0 * a1,T0 * a2){
- T0 * R=NULL;
- {T279 *n=((T279*)new(279));
- rT279make(n,a1,a2,(T0 *)C);
- R=(T0 *)n;}
- return R;
- }
- void rT211error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- void rT211fe_undefine(/*C*/T0 * a1,T0 * a2){
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms483);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT67to_string(a1));
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms484);
- /*UT*/(T45*)oRBC27eh;
- rT45append(((T48*)((T50*)a2)->_base_class_name)->_to_string);
- rT211fatal_error((T0 *)ms485);
- }
- int rT211is_merge_with(T211 *C,T0 * a1,T0 * a2){
- int R=0;
- int _ne=0;
- _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/;
- /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) {
- /*IF*/if ((!((C)->_result_type))||(!(XrT62result_type(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT211error(rT211start_position(C),(T0 *)ms488);
- }
- /*FI*/}
- /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) {
- /*IF*/if ((!((C)->_arguments))||(!(XrT62arguments(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT211error(rT211start_position(C),(T0 *)ms489);
- }
- else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT211error(rT211start_position(C),(T0 *)ms490);
- }
- /*FI*/}
- /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
- /*IF*/if (((int)(C)->_result_type)) {
- /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) {
- rT45error((T45*)oRBC27eh,(T0 *)ms491);
- }
- /*FI*/}
- /*FI*/}
- /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
- /*IF*/if (((int)(C)->_arguments)) {
- /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT211error(rT211start_position(C),(T0 *)ms494);
- }
- /*FI*/}
- /*FI*/}
- /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0);
- return R;
- }
- T0 * rT211start_position(T211 *C){
- T0 * R=NULL;
- R=XrT67start_position(rT211first_name(C));
- return R;
- }
- int rT211use_current(T211 *C){
- int R=0;
- R=XrT206use_current((C)->_langage,(T0 *)C);
- return R;
- }
- void rT211collect_for(T211 *C,int a1){
- /*IF*/if ((a1)==(1001)) {
- /*IF*/if (((int)(C)->_require_assertion)) {
- /*IF*/if (!(rT268fast_has((T268*)oRBC62require_collector,(C)->_require_assertion))) {
- rT268add_last((T268*)oRBC62require_collector,(C)->_require_assertion);
- }
- /*FI*/}
- /*FI*/}
- else {
- /*IF*/if (((int)(C)->_ensure_assertion)) {
- rT157add_into((T157*)(C)->_ensure_assertion,oRBC62assertion_collector);
- }
- /*FI*/}
- /*FI*/}
- int rT211is_cse(T211 *C){
- int R=0;
- R=XrT206is_cse((C)->_langage);
- return R;
- }
- void rT211add_into(T211 *C,T0 * a1){
- T0 * _fn=NULL;
- int _i=0;
- C->_base_class=rT46base_class((T46*)XrT67start_position(rT128item((T128*)(C)->_names,1)));
- _i=1;
- while (!((_i)>(rT128count((T128*)(C)->_names)))) {
- _fn=rT128item((T128*)(C)->_names,_i);
- /*IF*/if (rT61has((T61*)a1,XrT67to_key(_fn))) {
- _fn=XrT62first_name(rT61at((T61*)a1,XrT67to_key(_fn)));
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT67start_position(_fn));
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT67start_position(rT128item((T128*)(C)->_names,_i)));
- rT45error((T45*)oRBC27eh,(T0 *)ms419);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT67to_string(_fn));
- rT45error((T45*)oRBC27eh,(T0 *)ms38);
- }
- else {
- rT61put((T61*)a1,(T0 *)C,XrT67to_key(_fn));
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- T0 * rT211try_to_undefine(T211 *C,T0 * a1,T0 * a2){
- T0 * R=NULL;
- /*IF*/if (XrT67is_frozen(a1)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(rT211start_position(C));
- rT211error(XrT67start_position(a1),(T0 *)ms482);
- rT211fe_undefine(a1,a2);
- }
- else {
- R=rT211try_to_undefine_aux(C,a1,a2);
- /*IF*/if (((int)R)) {
- XrT203set_clients(R,(C)->_clients);
- }
- else {
- rT211fe_undefine(a1,a2);
- }
- /*FI*/}
- /*FI*/return R;
- }
- T0 * rT211try_to_undefine_aux(T211 *C,T0 * a1,T0 * a2){
- T0 * R=NULL;
- {T204 *n=((T204*)new(204));
- rT204from_effective(n,a1,(C)->_arguments,(C)->_require_assertion,(C)->_ensure_assertion,a2);
- R=(T0 *)n;}return R;
- }
- void rT211set_header_comment(T211 *C,T0 * a1){
- /*IF*/if ((((int)a1))&&((rT59count((T59*)a1))>(1))) {
- C->_end_comment=a1;
- }
- /*FI*/}
- int rT211can_hide(T211 *C,T0 * a1,T0 * a2){
- int R=0;
- int _ne=0;
- _ne=/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/;
- /*IF*/if (((T0 *)(C)->_result_type)!=((T0 *)XrT62result_type(a1))) {
- /*IF*/if ((!((C)->_result_type))||(!(XrT62result_type(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT211error(rT211start_position(C),(T0 *)ms501);
- }
- /*FI*/}
- /*FI*//*IF*/if (((T0 *)(C)->_arguments)!=((T0 *)XrT62arguments(a1))) {
- /*IF*/if ((!((C)->_arguments))||(!(XrT62arguments(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT211error(rT211start_position(C),(T0 *)ms502);
- }
- else if ((rT92count((T92*)(C)->_arguments))!=(rT92count((T92*)XrT62arguments(a1)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- rT211error(rT211start_position(C),(T0 *)ms503);
- }
- /*FI*/}
- /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
- /*IF*/if (((int)(C)->_result_type)) {
- /*IF*/if (!(XrT58is_a_in((C)->_result_type,XrT62result_type(a1),a2))) {
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms504);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT58run_time_mark(((T260*)a2)->_current_type));
- rT45error((T45*)oRBC27eh,(T0 *)ms505);
- }
- /*FI*/}
- /*FI*/}
- /*FI*//*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0)) {
- /*IF*/if (((int)(C)->_arguments)) {
- /*IF*/if (!(rT92is_a_in((T92*)(C)->_arguments,XrT62arguments(a1),a2))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT62start_position(a1));
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(rT211start_position(C));
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms506);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT58run_time_mark(((T260*)a2)->_current_type));
- rT45error((T45*)oRBC27eh,(T0 *)ms507);
- }
- /*FI*/}
- /*FI*/}
- /*FI*/R=((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)-(_ne))==(0);
- return R;
- }
- T0 * rT211base_class_name(T211 *C){
- T0 * R=NULL;
- R=((T50*)(C)->_base_class)->_base_class_name;
- return R;
- }
- void rT211copy(T211 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT211set_rescue_compound(T211 *C,T0 * a1){
- /*IF*/if ((((int)a1))&&(/*(IRF4*/0/*)*/)) {
- rT211error(rT211start_position(C),(T0 *)ms402);
- }
- /*FI*/C->_rescue_compound=a1;
- }
- void rT211make_external_routine(T211 *C,T0 * a1,T0* a2){
- C->_langage=a1;
- /*IF*/if (!(a2)) {
- C->_external_name=XrT67to_string(rT211first_name(C));
- }
- else {
- C->_external_name=a2;
- }
- /*FI*/}
- void rT211make_e_feature(T211 *C,T0 * a1,T0 * a2){
- C->_names=a1;
- C->_result_type=a2;
- }
- void rT211make_routine(T211 *C,T0 * a1,T0 * a2,T0 * a3,T0 * a4,T0 * a5){
- rT211make_e_feature(C,a1,NULL);
- C->_header_comment=a4;
- C->_arguments=a2;
- C->_obsolete_mark=a3;
- C->_require_assertion=a5;
- }
- int rT211is_c(T211 *C){
- int R=0;
- R=XrT206is_c((C)->_langage);
- return R;
- }
- void rT211make(T211 *C,T0 * a1,T0 * a2,T0 * a3,T0 * a4,T0 * a5,T0 * a6,T0* a7){
- rT211make_routine(C,a1,a2,a3,a4,a5);
- rT211make_external_routine(C,a6,a7);
- }
- int rT209use_current(/*C*/T0 * a1){
- int R=0;
- return R;
- }
- void rT209copy(T209 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT208use_current(/*C*/T0 * a1){
- int R=0;
- R=1;
- return R;
- }
- void rT208copy(T208 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT207use_current(/*C*/T0 * a1){
- int R=0;
- T0* _n=NULL;
- _n=XrT67to_string(XrT210first_name(a1));
- /*IF*/if (rT7is_equal((T7*)(T0 *)ms1517,_n)) {
- }
- else if (rT7is_equal((T7*)(T0 *)ms1516,_n)) {
- }
- else {
- R=1;
- }
- /*FI*/return R;
- }
- void rT207copy(T207 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT40cecil_define(T40 *C){
- T0 * _rf=NULL;
- int _i=0;
- /*IF*/if (((int)(C)->_cecil_list)) {
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms786);
- XrT34put_string((C)->_out_h,(T0 *)ms787);
- _i=XrT265upper((C)->_cecil_list);
- while (!((_i)==(0))) {
- _rf=XrT265item((C)->_cecil_list,_i);
- rT40cecil_define_of(C,_rf);
- _i=(_i)-(1);
- /*IF*/if ((_i)>(0)) {
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms804);
- }
- /*FI*/}
- XrT34put_string((C)->_out_h,(T0 *)ms805);
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms806);
- }
- /*FI*/}
- void rT40cecil_define_of(T40 *C,T0 * a1){
- T0 * _rfargs=NULL;
- T0 * _rfname=NULL;
- T0 * _rfrt=NULL;
- T0 * _rfct=NULL;
- T0* _running=NULL;
- int _running_count=0;
- int _i=0;
- int _rfid=0;
- _rfct=XrT261current_type(a1);
- _rfrt=XrT261result_type(a1);
- _rfname=XrT261name(a1);
- _rfargs=XrT261arguments(a1);
- rT38put_string((T38*)oRBC1std_output,XrT58run_time_mark(_rfct));
- rT38put_string((T38*)oRBC1std_output,XrT67to_key(_rfname));
- /*(IRF3*/(((T7*)oRBC40tmp_string)->_count)=(0);
- /*)*//*IF*/if (((int)_rfrt)) {
- _rfrt=XrT58run_type(_rfrt);
- /*IF*/if (XrT58is_expanded(_rfrt)) {
- XrT58mapping_c_in(_rfrt,oRBC40tmp_string);
- rT7extend((T7*)oRBC40tmp_string,'\40');
- }
- else {
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms788);
- }
- /*FI*/}
- else {
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms789);
- }
- /*FI*/rT7append((T7*)oRBC40tmp_string,XrT58run_time_mark(_rfct));
- rT7append((T7*)oRBC40tmp_string,XrT67to_key(_rfname));
- rT7extend((T7*)oRBC40tmp_string,'\50');
- /*IF*/if (XrT58fast_mapping_c(_rfct)) {
- XrT58mapping_c_in(_rfct,oRBC40tmp_string);
- rT7extend((T7*)oRBC40tmp_string,'\40');
- }
- else {
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms790);
- }
- /*FI*/rT7extend((T7*)oRBC40tmp_string,'C');
- /*IF*/if (((int)_rfargs)) {
- rT7extend((T7*)oRBC40tmp_string,'\54');
- rT92cecil_in((T92*)_rfargs,oRBC40tmp_string);
- }
- /*FI*/rT7extend((T7*)oRBC40tmp_string,'\51');
- rT40put_c_heading(C,oRBC40tmp_string);
- _running=((T260*)XrT58run_class(_rfct))->_running;
- /*IF*/if (!(_running)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_type(_rfct,(T0 *)ms792);
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms793);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT58run_time_mark(_rfct));
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT67to_key(_rfname));
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms794);
- rT45print_as_warning((T45*)oRBC27eh);
- }
- else {
- _running_count=rT263count((T263*)_running);
- _rfid=XrT58id(_rfct);
- /*IF*/if (((int)_rfrt)) {
- XrT34put_string((C)->_out_c,(T0 *)ms795);
- }
- /*FI*//*IF*/if ((_running_count)>(1)) {
- rT40update_switch_cltn(C,_rfct,_rfid,XrT261name(a1),_running);
- XrT34put_character((C)->_out_c,'X');
- }
- /*FI*/XrT34put_string((C)->_out_c,(T0 *)ms797);
- XrT34put_integer((C)->_out_c,_rfid);
- XrT67mapping_c(_rfname);
- XrT34put_character((C)->_out_c,'\50');
- /*IF*/if ((_running_count)==(1)) {
- XrT34put_character((C)->_out_c,'\50');
- XrT58mapping_cast(_rfct);
- }
- else if (rT44no_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_position(C,NULL);
- XrT34put_character((C)->_out_c,'\54');
- }
- /*FI*/XrT34put_character((C)->_out_c,'C');
- /*IF*/if ((_running_count)==(1)) {
- XrT34put_character((C)->_out_c,'\51');
- }
- /*FI*//*IF*/if (((int)_rfargs)) {
- _i=1;
- /*(IRF3*/(((T7*)oRBC40tmp_string)->_count)=(0);
- /*)*/while (!((_i)>(rT92count((T92*)_rfargs)))) {
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms801);
- rT2append_in(_i,oRBC40tmp_string);
- _i=(_i)+(1);
- }
- XrT34put_string((C)->_out_c,oRBC40tmp_string);
- }
- /*FI*/XrT34put_character((C)->_out_c,'\51');
- /*IF*/if (!(_rfrt)) {
- rT40put_semicolon(C);
- }
- /*FI*/}
- /*FI*/rT40put_string(C,(T0 *)ms803);
- }
- T0* rT40get_environment_variable(T40 *C,T0* a1){
- T0* R=NULL;
- rT7extend((T7*)a1,'\0');
- R=((T0 *)getenv(((T7 *)a1)->_storage));
- if (R) R=((T0 *)e2s((char *)R));
- rT7remove_last((T7*)a1,1);
- return R;
- }
- void rT40once_pre_computing(T40 *C){
- T0 * _of=NULL;
- T0 * _rf6=NULL;
- T0* _of_array=NULL;
- int _i=0;
- /*IF*/if (((int)(C)->_pre_computed_once)) {
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms842);
- _i=((T274*)(C)->_pre_computed_once)->_upper;
- {T275 *n=((T275*)new(275));
- rT275make(n,1,(1)+((_i)/(2)));
- _of_array=(T0 *)n;}
- rT275clear((T275*)_of_array);
- while (!((_i)==(0))) {
- _rf6=rT274item((T274*)(C)->_pre_computed_once,_i);
- _of=((T273*)_rf6)->_base_feature;
- /*IF*/if (!(rT275fast_has((T275*)_of_array,_of))) {
- rT38put_character((T38*)oRBC1std_output,'\40');
- rT275add_last((T275*)_of_array,_of);
- rT273pre_computing((T273*)_rf6);
- }
- /*FI*/_i=(_i)-(1);
- }
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms846);
- rT38put_integer((T38*)oRBC1std_output,rT275count((T275*)_of_array));
- rT38put_character((T38*)oRBC1std_output,'\12');
- }
- /*FI*/}
- void rT40define_initialize(T40 *C){
- int _no_check=0;
- _no_check=rT44no_check((T44*)oRBC27eiffel_run_control);
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms1045);
- rT52define_extern_tables((T52*)oRBC27small_eiffel);
- XrT34put_string((C)->_out_h,(T0 *)ms1057);
- rT40swap_on_c(C);
- C->_elt_c_count=((C)->_elt_c_count)+(50);
- rT40incr_elt_c_count(C,10);
- rT40put_string(C,(T0 *)ms1058);
- /*(IRF3*//*UT*/(T52*)oRBC27small_eiffel;
- {
- T0 * _rc=NULL;
- int _i=0;
- _i=1;
- while (!((_i)>(((T262*)oRBC52run_class_dictionary)->_count))) {
- _rc=rT262item((T262*)oRBC52run_class_dictionary,_i);
- /*IF*/if (((T260*)_rc)->_at_run_time) {
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1059);
- rT40put_integer((T40*)oRBC27cpp,((T260*)_rc)->_id);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1060);
- rT40put_integer((T40*)oRBC27cpp,((T260*)_rc)->_id);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1061);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*)*//*IF*/if (_no_check) {
- /*(IRF3*//*UT*/(T52*)oRBC27small_eiffel;
- {
- T0 * _rc=NULL;
- T0 * _bc=NULL;
- int _i=0;
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1062);
- _i=1;
- while (!((_i)>(((T54*)oRBC52base_class_dictionary)->_count))) {
- _bc=rT54item((T54*)oRBC52base_class_dictionary,_i);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1063);
- rT40put_integer((T40*)oRBC27cpp,((T50*)_bc)->_id);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1064);
- rT40put_string_c((T40*)oRBC27cpp,((T50*)_bc)->_path);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1065);
- _i=(_i)+(1);
- }
- _i=1;
- while (!((_i)>(((T262*)oRBC52run_class_dictionary)->_count))) {
- _rc=rT262item((T262*)oRBC52run_class_dictionary,_i);
- /*IF*/if ((((T260*)_rc)->_at_run_time)&&(XrT58is_generic(((T260*)_rc)->_current_type))) {
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1066);
- rT40put_integer((T40*)oRBC27cpp,((T260*)_rc)->_id);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1067);
- rT40put_integer((T40*)oRBC27cpp,((T50*)rT260base_class((T260*)_rc))->_id);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1068);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*)*/}
- /*FI*//*IF*/if (((C)->_generator_used)||(rT44no_check((T44*)oRBC27eiffel_run_control))) {
- /*(IRF3*//*UT*/(T52*)oRBC27small_eiffel;
- {
- T0 * _rc=NULL;
- T0 * _bc=NULL;
- int _i=0;
- _i=1;
- while (!((_i)>(((T54*)oRBC52base_class_dictionary)->_count))) {
- _bc=rT54item((T54*)oRBC52base_class_dictionary,_i);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1069);
- rT40put_integer((T40*)oRBC27cpp,((T50*)_bc)->_id);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1070);
- rT40put_string_c((T40*)oRBC27cpp,((T48*)((T50*)_bc)->_base_class_name)->_to_string);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1071);
- _i=(_i)+(1);
- }
- _i=1;
- while (!((_i)>(((T262*)oRBC52run_class_dictionary)->_count))) {
- _rc=rT262item((T262*)oRBC52run_class_dictionary,_i);
- /*IF*/if ((((T260*)_rc)->_at_run_time)&&(XrT58is_generic(((T260*)_rc)->_current_type))) {
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1072);
- rT40put_integer((T40*)oRBC27cpp,((T260*)_rc)->_id);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1073);
- rT40put_integer((T40*)oRBC27cpp,((T50*)rT260base_class((T260*)_rc))->_id);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1074);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*)*/}
- /*FI*//*IF*/if (((C)->_generating_type_used)||(rT44no_check((T44*)oRBC27eiffel_run_control))) {
- /*(IRF3*//*UT*/(T52*)oRBC27small_eiffel;
- {
- T0 * _rc=NULL;
- int _i=0;
- _i=1;
- while (!((_i)>(((T262*)oRBC52run_class_dictionary)->_count))) {
- _rc=rT262item((T262*)oRBC52run_class_dictionary,_i);
- /*IF*/if (((T260*)_rc)->_at_run_time) {
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1075);
- rT40put_integer((T40*)oRBC27cpp,((T260*)_rc)->_id);
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1076);
- /*IF*/if (XrT58is_generic(((T260*)_rc)->_current_type)) {
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1077);
- rT40put_string_c((T40*)oRBC27cpp,XrT58run_time_mark(((T260*)_rc)->_current_type));
- rT40put_character((T40*)oRBC27cpp,'\51');
- }
- else {
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1078);
- rT40put_integer((T40*)oRBC27cpp,((T260*)_rc)->_id);
- rT40put_character((T40*)oRBC27cpp,'\135');
- }
- /*FI*/rT40put_string((T40*)oRBC27cpp,(T0 *)ms1079);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*)*/}
- /*FI*/rT40put_string(C,(T0 *)ms1080);
- }
- void rT40define_main(T40 *C,T0 * a1){
- T0 * _ms=NULL;
- T0 * _ct=NULL;
- T0 * _rc=NULL;
- int _id=0;
- int _i=0;
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms807);
- _ct=XrT261current_type(a1);
- _id=XrT58id(_ct);
- _rc=XrT261run_class(a1);
- /*IF*/if ((C)->_environment_used) {
- rT40put_extern1(C,(T0 *)ms808);
- rT40put_extern1(C,(T0 *)ms809);
- }
- /*FI*/rT40swap_on_c(C);
- /*IF*/if (((int)(C)->_ms_list)) {
- rT40incr_elt_c_count(C,rT151count((T151*)(C)->_ms_list));
- }
- else {
- rT40incr_elt_c_count(C,10);
- }
- /*FI*/rT40put_string(C,(T0 *)ms810);
- /*IF*/if ((C)->_environment_used) {
- rT40put_string(C,(T0 *)ms811);
- }
- /*FI*/rT40put_string(C,(T0 *)ms812);
- rT40put_integer(C,_id);
- rT40put_string(C,(T0 *)ms813);
- rT40put_new(C,_ct);
- rT40put_string(C,(T0 *)ms817);
- /*IF*/if ((C)->_environment_used) {
- rT40put_lines(C,ma(41,0,5,ms818,ms819,ms820,ms821,ms822));
- }
- /*FI*/rT40put_string(C,(T0 *)ms823);
- rT40put_string(C,(T0 *)ms824);
- rT40put_string(C,(T0 *)ms825);
- /*IF*/if (((int)(C)->_ms_list)) {
- _i=((T151*)(C)->_ms_list)->_lower;
- while (!((_i)>(((T151*)(C)->_ms_list)->_upper))) {
- _ms=rT151item((T151*)(C)->_ms_list,_i);
- /*IF*/if (((int)_ms)) {
- rT40put_string(C,(T0 *)ms826);
- rT40put_integer(C,_i);
- rT40put_string(C,(T0 *)ms827);
- rT40put_string_c(C,((T76*)_ms)->_to_string);
- rT40put_string(C,(T0 *)ms836);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*FI*//*IF*/if (rT44no_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_lines(C,ma(41,0,4,ms837,ms838,ms839,ms840));
- }
- /*FI*/rT40expanded_attributes(C,(T0 *)ms841,NULL,_ct);
- rT40once_pre_computing(C);
- rT40push_new(C,a1,NULL);
- XrT261mapping_c(a1);
- rT40pop(C);
- /*IF*/if (rT44invariant_check((T44*)oRBC27eiffel_run_control)) {
- /*IF*/if (((int)((T260*)_rc)->_invariant_assertion)) {
- rT40put_string(C,(T0 *)ms847);
- rT40put_integer(C,_id);
- rT40put_string(C,(T0 *)ms848);
- }
- /*FI*/}
- /*FI*//*IF*/if (rT44no_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_lines(C,ma(41,0,3,ms849,ms850,ms851));
- }
- /*FI*/rT40put_string(C,(T0 *)ms852);
- /*IF*/if (((int)(C)->_ms_list)) {
- rT40incr_elt_c_count(C,rT151count((T151*)(C)->_ms_list));
- }
- else {
- rT40incr_elt_c_count(C,10);
- }
- /*FI*/rT40print_included(C);
- }
- void rT40define_used_basics(T40 *C){
- T0 * _ms=NULL;
- int _no_check=0;
- int _i=0;
- _no_check=rT44no_check((T44*)oRBC27eiffel_run_control);
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms855);
- /*IF*/if ((/*UT*/(T52*)oRBC27small_eiffel,
- rT52is_used((T0 *)ms188))) {
- rT40include(C,(T0 *)ms856);
- rT40put_c_function(C,ma(41,0,5,ms857,ms858,ms859,ms860,ms861));
- rT40put_c_function(C,ma(41,0,8,ms862,ms863,ms864,ms865,ms866,ms867,ms868,ms869));
- }
- /*FI*//*IF*/if ((/*UT*/(T52*)oRBC27small_eiffel,
- rT52is_used((T0 *)ms187))) {
- rT40include(C,(T0 *)ms870);
- rT40put_c_function(C,ma(41,0,33,ms871,ms872,ms873,ms874,ms875,ms876,ms877,ms878,ms879,ms880,ms881,ms882,ms883,ms884,ms885,ms886,ms887,ms888,ms889,ms890,ms891,ms892,ms893,ms894,ms895,ms896,ms897,ms898,ms899,ms900,ms901,ms902,ms903));
- }
- /*FI*//*IF*/if (((int)(C)->_ms_list)) {
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms904);
- rT38put_integer((T38*)oRBC1std_output,rT151count((T151*)(C)->_ms_list));
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms905);
- rT40swap_on_h(C);
- rT40put_character(C,'\12');
- _i=1;
- while (!((_i)>(((T151*)(C)->_ms_list)->_upper))) {
- _ms=rT151item((T151*)(C)->_ms_list,_i);
- /*IF*/if (((int)_ms)) {
- /*(IRF3*/(((T7*)oRBC40tmp_string)->_count)=(0);
- /*)*/rT7append((T7*)oRBC40tmp_string,(T0 *)ms906);
- rT2append_in(_i,oRBC40tmp_string);
- rT40put_extern1(C,oRBC40tmp_string);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*FI*//*IF*/if (_no_check) {
- rT40put_c_function(C,ma(41,0,56,ms907,ms908,ms909,ms910,ms911,ms912,ms913,ms914,ms915,ms916,ms917,ms918,ms919,ms920,ms921,ms922,ms923,ms924,ms925,ms926,ms927,ms928,ms929,ms930,ms931,ms932,ms933,ms934,ms935,ms936,ms937,ms938,ms939,ms940,ms941,ms942,ms943,ms944,ms945,ms946,ms947,ms948,ms949,ms950,ms951,ms952,ms953,ms954,ms955,ms956,ms957,ms958,ms959,ms960,ms961,ms962));
- }
- else {
- rT40put_c_function(C,ma(41,0,4,ms963,ms964,ms965,ms966));
- }
- /*FI*//*IF*/if (_no_check) {
- rT40put_c_function(C,ma(41,0,4,ms967,ms968,ms969,ms970));
- rT40put_c_function(C,ma(41,0,5,ms971,ms972,ms973,ms974,ms975));
- rT40put_c_function(C,ma(41,0,3,ms976,ms977,ms978));
- rT40put_c_function(C,ma(41,0,3,ms979,ms980,ms981));
- rT40put_c_function(C,ma(41,0,9,ms982,ms983,ms984,ms985,ms986,ms987,ms988,ms989,ms990));
- rT40put_c_function(C,ma(41,0,3,ms991,ms992,ms993));
- }
- /*FI*/rT40put_c_function(C,ma(41,0,4,ms994,ms995,ms996,ms997));
- rT40define_switches(C);
- /*IF*/if (((int)(C)->_conversion_mem)) {
- rT40define_conversion(C);
- }
- /*FI*//*IF*/if (((C)->_sure_void_count)>(0)) {
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms1031);
- rT38put_integer((T38*)oRBC1std_output,(C)->_sure_void_count);
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms1032);
- }
- /*FI*/rT40print_count((T0 *)ms1033,(C)->_direct_call_count);
- rT40print_count((T0 *)ms1034,(C)->_check_id_count);
- rT40print_count((T0 *)ms1035,(C)->_switch_count);
- rT40print_count((T0 *)ms1036,(C)->_inlined_procedure_count);
- rT40print_count((T0 *)ms1037,(C)->_inlined_function_count);
- rT40print_count((T0 *)ms1038,(C)->_static_expression_count);
- rT40print_count((T0 *)ms1039,(C)->_real_procedure_count);
- rT40print_count((T0 *)ms1040,(C)->_real_function_count);
- rT40print_count((T0 *)ms1041,(C)->_procedure_count);
- rT40print_count((T0 *)ms1042,(C)->_function_count);
- /*IF*/if (((int)(C)->_pre_computed_once)) {
- rT40print_count((T0 *)ms1043,rT274count((T274*)(C)->_pre_computed_once));
- }
- /*FI*/rT38put_string((T38*)oRBC1std_output,(T0 *)ms1044);
- rT38put_integer((T38*)oRBC1std_output,((T55*)oRBC40stack_code)->_upper);
- rT38put_character((T38*)oRBC1std_output,'\12');
- rT40define_initialize(C);
- }
- void rT40define_switches(T40 *C){
- T0* _st=NULL;
- int _count=0;
- int _j=0;
- int _i=0;
- /*IF*/if (((int)(C)->_switch_cltn)) {
- rT40swap_on_c(C);
- _i=((T270*)(C)->_switch_cltn)->_lower;
- while (!((_i)>(((T270*)(C)->_switch_cltn)->_upper))) {
- _st=rT270item((T270*)(C)->_switch_cltn,_i);
- /*IF*/if (((int)_st)) {
- _j=((T271*)_st)->_lower;
- while (!((_j)>(((T271*)_st)->_upper))) {
- rT269c_define((T269*)rT271item((T271*)_st,_j));
- rT40incr_elt_c_count(C,20);
- _count=(_count)+(1);
- _j=(_j)+(1);
- }
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*FI*/rT40print_count((T0 *)ms1019,_count);
- }
- void rT40define_conversion(T40 *C){
- T0 * _dest_type=NULL;
- T0 * _src_type=NULL;
- T0 * _dest_rc=NULL;
- T0 * _src_rc=NULL;
- int _i=0;
- _i=1;
- while (!((_i)>(((T263*)(C)->_conversion_mem)->_upper))) {
- _src_rc=rT263item((T263*)(C)->_conversion_mem,_i);
- _i=(_i)+(1);
- _dest_rc=rT263item((T263*)(C)->_conversion_mem,_i);
- _i=(_i)+(1);
- _src_type=((T260*)_src_rc)->_current_type;
- _dest_type=((T260*)_dest_rc)->_current_type;
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms1020);
- rT38put_string((T38*)oRBC1std_output,XrT58run_time_mark(_src_type));
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms1021);
- rT38put_string((T38*)oRBC1std_output,XrT58run_time_mark(_dest_type));
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms1022);
- /*(IRF3*/(((T7*)oRBC40tmp_string)->_count)=(0);
- /*)*//*IF*/if (XrT58is_reference(_dest_type)) {
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1023);
- }
- else {
- XrT58mapping_c_in(_dest_type,oRBC40tmp_string);
- rT7extend((T7*)oRBC40tmp_string,'\40');
- }
- /*FI*/rT40conversion_name(((T260*)_dest_rc)->_id);
- rT7extend((T7*)oRBC40tmp_string,'\50');
- XrT58mapping_c_in(_src_type,oRBC40tmp_string);
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1025);
- XrT34put_string((C)->_out_h,oRBC40tmp_string);
- XrT34put_string((C)->_out_h,(T0 *)ms1026);
- XrT34put_string((C)->_out_c,oRBC40tmp_string);
- /*(IRF3*/(((T7*)oRBC40tmp_string)->_count)=(0);
- /*)*/rT7append((T7*)oRBC40tmp_string,(T0 *)ms1027);
- XrT58mapping_c_in(_dest_type,oRBC40tmp_string);
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1028);
- XrT58mapping_c_in(_dest_type,oRBC40tmp_string);
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1029);
- rT2append_in(((T260*)_dest_rc)->_id,oRBC40tmp_string);
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1030);
- XrT34put_string((C)->_out_c,oRBC40tmp_string);
- }
- }
- int ofBC27directory_separator=0;
- T3 oRBC27directory_separator;
- char rT40directory_separator(T40 *C){
- char R='\0';
- if (ofBC27directory_separator==0){
- ofBC27directory_separator=1;
- R=rT7last((T7*)rT40small_eiffel_directory(C));
- oRBC27directory_separator=R;}
- return oRBC27directory_separator;}
- T0* rT40to_bcn(T40 *C,T0* a1){
- T0* R=NULL;
- char _c='\0';
- int _i=0;
- R=rT40clone(C,a1);
- /*IF*/if (rT7has_suffix((T7*)R,(T0 *)ms51)) {
- rT7remove_last((T7*)R,2);
- }
- /*FI*/_i=((T7*)R)->_count;
- while (!((_i)==(0))) {
- _c=rT7item((T7*)R,_i);
- /*IF*/if (rT3is_letter(_c)) {
- _i=(_i)-(1);
- }
- else if ((_c)==('\137')) {
- _i=(_i)-(1);
- }
- else if (rT3is_digit(_c)) {
- _i=(_i)-(1);
- }
- else {
- rT7remove_first((T7*)R,_i);
- _i=0;
- }
- /*FI*/}
- rT7to_upper((T7*)R);
- return R;
- }
- void rT40fatal_error(/*C*/T0* a1){
- rT45fatal_error((T45*)oRBC27eh,a1);
- }
- void rT40die_with_code(T40 *C,int a1){
- exit(a1);
- }
- void rT40incr_pre_computed_once_count(T40 *C,T0 * a1){
- /*IF*/if (!((C)->_pre_computed_once)) {
- C->_pre_computed_once=ma(274,0,1,a1);
- }
- else {
- rT274add_last((T274*)(C)->_pre_computed_once,a1);
- }
- /*FI*/}
- void rT40incr_real_function_count(T40 *C){
- C->_real_function_count=((C)->_real_function_count)+(1);
- rT40incr_elt_c_count(C,10);
- }
- void rT40incr_function_count(T40 *C){
- C->_function_count=((C)->_function_count)+(1);
- rT40incr_elt_c_count(C,10);
- }
- void rT40incr_inlined_function_count(T40 *C){
- C->_inlined_function_count=((C)->_inlined_function_count)+(1);
- }
- void rT40incr_real_procedure_count(T40 *C){
- C->_real_procedure_count=((C)->_real_procedure_count)+(1);
- rT40incr_elt_c_count(C,10);
- }
- void rT40incr_procedure_count(T40 *C){
- C->_procedure_count=((C)->_procedure_count)+(1);
- rT40incr_elt_c_count(C,10);
- }
- void rT40incr_inlined_procedure_count(T40 *C){
- C->_inlined_procedure_count=((C)->_inlined_procedure_count)+(1);
- }
- void rT40incr_static_expression_count(T40 *C){
- C->_static_expression_count=((C)->_static_expression_count)+(1);
- }
- void rT40manifest_string_mapping_c(T40 *C,int a1){
- rT40put_string(C,(T0 *)ms1157);
- rT40put_integer(C,a1);
- }
- void rT40incr_elt_c_count(T40 *C,int a1){
- C->_elt_c_count=((C)->_elt_c_count)+(a1);
- /*IF*/if (((C)->_elt_c_count)>(1500)) {
- C->_elt_c_count=0;
- XrT34disconnect((C)->_out_c);
- C->_split_count=((C)->_split_count)+(1);
- rT7copy((T7*)rT40path_c(C),rT40path_h(C));
- rT7remove_last((T7*)rT40path_c(C),2);
- rT2append_in((C)->_split_count,rT40path_c(C));
- rT7append((T7*)rT40path_c(C),(T0 *)ms532);
- C->_out_c=rT40open_write(C,rT40path_c(C));
- rT40add_first_include(C);
- /*IF*/if (((T0 *)(C)->_current_out)!=((T0 *)(C)->_out_h)) {
- C->_current_out=(C)->_out_c;
- }
- /*FI*/}
- /*FI*/}
- int ofBC40path_make=0;
- T0*oRBC40path_make;
- T0* rT40path_make(T40 *C){
- T0* R=NULL;
- if (ofBC40path_make==0){
- ofBC40path_make=1;
- R=rT40clone(C,rT40path_h(C));
- rT7remove_last((T7*)R,2);
- rT7append((T7*)R,rT40make_suffix(C));
- oRBC40path_make=R;}
- return oRBC40path_make;}
- int ofBC40path_h=0;
- T0*oRBC40path_h;
- T0* rT40path_h(T40 *C){
- T0* R=NULL;
- if (ofBC40path_h==0){
- ofBC40path_h=1;
- R=((T44*)oRBC27eiffel_run_control)->_root_class;
- /*IF*/if (!(R)) {
- rT40fatal_error((T0 *)ms530);
- }
- else {
- R=rT40to_bcn(C,R);
- rT7to_lower((T7*)R);
- rT7append((T7*)R,(T0 *)ms531);
- }
- /*FI*/oRBC40path_h=R;}
- return oRBC40path_h;}
- int ofBC40path_c=0;
- T0*oRBC40path_c;
- T0* rT40path_c(T40 *C){
- T0* R=NULL;
- if (ofBC40path_c==0){
- ofBC40path_c=1;
- R=rT40clone(C,rT40path_h(C));
- rT7remove_last((T7*)R,2);
- C->_split_count=1;
- rT2append_in((C)->_split_count,R);
- rT7append((T7*)R,(T0 *)ms532);
- oRBC40path_c=R;}
- return oRBC40path_c;}
- void rT40trace_boolean_expression(T40 *C,T0 * a1){
- rT40rs_push_position(C,'2',XrT68start_position(a1));
- rT40put_string(C,(T0 *)ms1277);
- XrT68compile_to_c(a1);
- rT40put_character(C,'\51');
- }
- T0*oRBC1std_error;
- int rT40new_goto(T40 *C){
- int R=0;
- C->_goto_count=((C)->_goto_count)+(1);
- R=(C)->_goto_count;
- return R;
- }
- void rT40open_read(T40 *C,T0 * a1,T0* a2){
- rT39connect_to((T39*)a1,a2);
- /*IF*/if (!(rT39is_connected((T39*)a1))) {
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms53);
- rT33put_string((T33*)oRBC1std_error,a2);
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms54);
- rT40die_with_code(C,1);
- }
- /*FI*/}
- T0* rT40clone(T40 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- T0 * rT40open_write(T40 *C,T0* a1){
- T0 * R=NULL;
- {T34 *n=((T34*)new(34));
- rT34connect_to(n,a1);
- R=(T0 *)n;}
- /*IF*/if (!(XrT34is_connected(R))) {
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms528);
- rT33put_string((T33*)oRBC1std_error,a1);
- rT33put_string((T33*)oRBC1std_error,(T0 *)ms529);
- rT40die_with_code(C,1);
- }
- /*FI*/return R;
- }
- void rT40get_started(T40 *C){
- int _no_check=0;
- _no_check=rT44no_check((T44*)oRBC27eiffel_run_control);
- C->_has_started=1;
- C->_top=0;
- C->_out_c=rT40open_write(C,rT40path_c(C));
- C->_current_out=(C)->_out_c;
- rT40add_first_include(C);
- C->_out_h=rT40open_write(C,rT40path_h(C));
- C->_current_out=(C)->_out_h;
- rT40put_banner((C)->_out_h);
- rT40include(C,(T0 *)ms541);
- rT40include(C,(T0 *)ms542);
- rT40include(C,(T0 *)ms543);
- rT40include(C,(T0 *)ms544);
- rT40put_lines(C,ma(41,0,7,ms545,ms546,ms547,ms548,ms549,ms550,ms551));
- rT40put_c_function(C,ma(41,0,6,ms555,ms556,ms557,ms558,ms559,ms560));
- rT40cdef_t(C,(T0 *)ms563,1);
- rT40cdef_id(C,(T0 *)ms566,1);
- rT40cdef_id(C,(T0 *)ms567,2);
- rT40cdef_id(C,(T0 *)ms568,3);
- rT40cdef_id(C,(T0 *)ms569,6);
- rT40cdef_id(C,(T0 *)ms570,4);
- rT40cdef_id(C,(T0 *)ms571,5);
- rT40cdef_id(C,(T0 *)ms572,7);
- rT40cdef_id(C,(T0 *)ms573,8);
- rT40cdef_id(C,(T0 *)ms574,10);
- rT40cdef_id(C,(T0 *)ms575,11);
- rT40cdef_id(C,(T0 *)ms576,12);
- rT40cdef_id(C,(T0 *)ms577,13);
- rT40cdef_id(C,(T0 *)ms578,14);
- rT40cdef_id(C,(T0 *)ms579,15);
- rT40cdef_id(C,(T0 *)ms580,16);
- rT40cdef_id(C,(T0 *)ms581,17);
- rT40cdef_id(C,(T0 *)ms582,18);
- rT40cdef_id(C,(T0 *)ms583,19);
- /*IF*/if (_no_check) {
- rT40put_extern3(C,(T0 *)ms589,(T0 *)ms590);
- rT40put_extern3(C,(T0 *)ms591,(T0 *)ms592);
- rT40put_extern3(C,(T0 *)ms593,(T0 *)ms594);
- rT40put_extern3(C,(T0 *)ms595,(T0 *)ms596);
- rT40put_extern3(C,(T0 *)ms597,(T0 *)ms598);
- rT40put_extern3(C,(T0 *)ms599,(T0 *)ms600);
- rT40put_extern3(C,(T0 *)ms205,(T0 *)ms205);
- rT40put_extern3(C,(T0 *)ms293,(T0 *)ms293);
- rT40put_extern1(C,(T0 *)ms604);
- rT40put_extern1(C,(T0 *)ms605);
- rT40put_extern1(C,(T0 *)ms606);
- rT40put_extern1(C,(T0 *)ms607);
- rT40put_c_function(C,ma(41,0,16,ms608,ms609,ms610,ms611,ms612,ms613,ms614,ms615,ms616,ms617,ms618,ms619,ms620,ms621,ms622,ms623));
- rT40put_c_function(C,ma(41,0,7,ms624,ms625,ms626,ms627,ms628,ms629,ms630));
- rT40put_c_function(C,ma(41,0,3,ms631,ms632,ms633));
- rT40put_c_function(C,ma(41,0,10,ms634,ms635,ms636,ms637,ms638,ms639,ms640,ms641,ms642,ms643));
- rT40put_c_function(C,ma(41,0,3,ms644,ms645,ms646));
- rT40put_c_function(C,ma(41,0,6,ms647,ms648,ms649,ms650,ms651,ms652));
- rT40put_c_function(C,ma(41,0,6,ms653,ms654,ms655,ms656,ms657,ms658));
- rT40put_c_function(C,ma(41,0,6,ms659,ms660,ms661,ms662,ms663,ms664));
- rT40put_c_function(C,ma(41,0,6,ms665,ms666,ms667,ms668,ms669,ms670));
- rT40put_c_function(C,ma(41,0,6,ms671,ms672,ms673,ms674,ms675,ms676));
- rT40put_c_function(C,ma(41,0,6,ms677,ms678,ms679,ms680,ms681,ms682));
- rT40put_c_function(C,ma(41,0,6,ms683,ms684,ms685,ms686,ms687,ms688));
- }
- /*FI*//*IF*/if (rT44require_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_extern1(C,(T0 *)ms689);
- rT40put_extern1(C,(T0 *)ms690);
- rT40put_extern2(C,(T0 *)ms694,'0');
- rT40put_c_function(C,ma(41,0,5,ms695,ms696,ms697,ms698,ms699));
- rT40put_macro_af(C,(T0 *)ms701);
- rT40put_macro_af(C,(T0 *)ms702);
- }
- else {
- rT40put_macro_af(C,(T0 *)ms703);
- rT40put_macro_af(C,(T0 *)ms704);
- }
- /*FI*//*IF*/if (rT44ensure_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_extern2(C,(T0 *)ms705,'0');
- rT40put_c_function(C,ma(41,0,3,ms706,ms707,ms708));
- rT40put_macro_af(C,(T0 *)ms709);
- rT40put_macro_af(C,(T0 *)ms710);
- }
- else {
- rT40put_macro_af(C,(T0 *)ms711);
- rT40put_macro_af(C,(T0 *)ms712);
- }
- /*FI*//*IF*/if (rT44invariant_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_extern2(C,(T0 *)ms713,'0');
- rT40put_c_function(C,ma(41,0,3,ms714,ms715,ms716));
- rT40put_macro_af(C,(T0 *)ms717);
- rT40put_macro_af(C,(T0 *)ms718);
- }
- else {
- rT40put_macro_af(C,(T0 *)ms719);
- rT40put_macro_af(C,(T0 *)ms720);
- }
- /*FI*//*IF*/if (rT44loop_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_extern2(C,(T0 *)ms721,'0');
- rT40put_c_function(C,ma(41,0,3,ms722,ms723,ms724));
- rT40put_c_function(C,ma(41,0,11,ms725,ms726,ms727,ms728,ms729,ms730,ms731,ms732,ms733,ms734,ms735));
- rT40put_macro_af(C,(T0 *)ms736);
- rT40put_macro_af(C,(T0 *)ms737);
- }
- else {
- rT40put_macro_af(C,(T0 *)ms738);
- rT40put_macro_af(C,(T0 *)ms739);
- }
- /*FI*//*IF*/if (rT44all_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_extern2(C,(T0 *)ms740,'0');
- rT40put_c_function(C,ma(41,0,3,ms741,ms742,ms743));
- rT40put_macro_af(C,(T0 *)ms744);
- rT40put_macro_af(C,(T0 *)ms745);
- }
- else {
- rT40put_macro_af(C,(T0 *)ms746);
- rT40put_macro_af(C,(T0 *)ms747);
- }
- /*FI*/rT40put_macro_af(C,(T0 *)ms748);
- rT40put_macro_af(C,(T0 *)ms749);
- rT40macro_list_printing(C);
- C->_current_out=(C)->_out_c;
- }
- void rT40macro_list_printing(T40 *C){
- int _i=0;
- /*IF*/if (((int)(C)->_macro_list)) {
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms750);
- XrT34put_string((C)->_out_h,(T0 *)ms751);
- _i=1;
- while (!((_i)==(((T41*)(C)->_macro_list)->_upper))) {
- XrT34put_string((C)->_out_h,rT41item((T41*)(C)->_macro_list,_i));
- _i=(_i)+(1);
- }
- XrT34put_string((C)->_out_h,(T0 *)ms752);
- rT38put_string((T38*)oRBC1std_output,(T0 *)ms753);
- }
- /*FI*/}
- int rT40target_cannot_be_dropped(T40 *C){
- int R=0;
- int _function=0;
- {int iv1=rT55item((T55*)oRBC40stack_code,(C)->_top);
- if ((1004 <= iv1) && (iv1<= 1005)) goto l2;
- goto l3;
- l2: ;
- R=!(XrT68can_be_dropped(XrT81item(oRBC40stack_target,(C)->_top)));
- goto l1;
- l3: ;
- l1: ;
- }
- /*IF*/if (R) {
- _function=((int)XrT261result_type(XrT265item(oRBC40stack_rf,(C)->_top)));
- /*IF*/if (_function) {
- rT40put_character(C,'\50');
- }
- /*FI*/rT40put_string(C,(T0 *)ms1399);
- rT40put_target(C);
- /*IF*/if (_function) {
- rT40put_string(C,(T0 *)ms1400);
- }
- else {
- rT40put_string(C,(T0 *)ms1401);
- }
- /*FI*/}
- /*FI*/return R;
- }
- void rT40variant_check(T40 *C,T0 * a1){
- rT40rs_push_position(C,'6',XrT68start_position(a1));
- rT40put_string(C,(T0 *)ms1308);
- XrT68compile_to_c(a1);
- rT40put_string(C,(T0 *)ms1309);
- }
- int ofBC27tmp_file_read=0;
- T0*oRBC27tmp_file_read;
- T0 * rT40tmp_file_read(/*C*/void){
- T0 * R=NULL;
- if (ofBC27tmp_file_read==0){
- ofBC27tmp_file_read=1;
- {T39 *n=((T39*)new(39));
- /*(IRF3*/((n)->_mode)=((T0 *)ms26);
- /*)*/R=(T0 *)n;}
- oRBC27tmp_file_read=R;}
- return oRBC27tmp_file_read;}
- void rT40stack_push(T40 *C,int a1){
- int _new_size=0;
- C->_top=((C)->_top)+(1);
- /*IF*/if (((C)->_top)>(((T55*)oRBC40stack_code)->_upper)) {
- _new_size=(((T55*)oRBC40stack_code)->_upper)+(12);
- rT55resize((T55*)oRBC40stack_code,1,_new_size);
- XrT265resize(oRBC40stack_rf,1,_new_size);
- XrT81resize(oRBC40stack_target,1,_new_size);
- rT272resize((T272*)oRBC40stack_args,1,_new_size);
- rT271resize((T271*)oRBC40stack_switch,1,_new_size);
- rT41resize((T41*)oRBC40stack_string,1,_new_size);
- }
- /*FI*/rT55put((T55*)oRBC40stack_code,a1,(C)->_top);
- }
- T0*oRBC40stack_code;
- T0*oRBC40stack_rf;
- T0*oRBC40stack_target;
- T0*oRBC40stack_args;
- T0*oRBC40stack_switch;
- T0*oRBC40stack_string;
- void rT40put_arguments(T40 *C){
- T0 * _fal=NULL;
- {int iv1=rT55item((T55*)oRBC40stack_code,(C)->_top);
- if (1003 == iv1) goto l5;
- goto l6;
- l5: ;
- _fal=XrT261arguments(XrT265item(oRBC40stack_rf,(C)->_top));
- rT170compile_to_c((T170*)rT272item((T272*)oRBC40stack_args,(C)->_top),_fal);
- goto l4;
- l6: ;
- if (1004 == iv1) goto l7;
- goto l8;
- l7: ;
- _fal=XrT261arguments(XrT265item(oRBC40stack_rf,(C)->_top));
- rT170compile_to_c((T170*)rT272item((T272*)oRBC40stack_args,(C)->_top),_fal);
- goto l4;
- l8: ;
- if (1005 == iv1) goto l9;
- goto l10;
- l9: ;
- _fal=XrT261arguments(XrT265item(oRBC40stack_rf,(C)->_top));
- rT170compile_to_c((T170*)rT272item((T272*)oRBC40stack_args,(C)->_top),_fal);
- goto l4;
- l10: ;
- if (1006 == iv1) goto l11;
- goto l12;
- l11: ;
- _fal=XrT261arguments(XrT265item(oRBC40stack_rf,(C)->_top));
- rT269put_arguments((T269*)rT271item((T271*)oRBC40stack_switch,(C)->_top),_fal);
- goto l4;
- l12: ;
- if (1007 == iv1) goto l13;
- goto l14;
- l13: ;
- _fal=XrT261arguments(XrT265item(oRBC40stack_rf,(C)->_top));
- rT170compile_to_c((T170*)rT272item((T272*)oRBC40stack_args,(C)->_top),_fal);
- goto l4;
- l14: ;
- l4: ;
- }
- }
- void rT40rs_link(T40 *C,T0 * a1){
- rT40put_string(C,(T0 *)ms1370);
- XrT261mapping_name(a1);
- rT40put_string(C,(T0 *)ms1371);
- }
- int ofBC27small_eiffel_directory=0;
- T0*oRBC27small_eiffel_directory;
- T0* rT40small_eiffel_directory(T40 *C){
- T0* R=NULL;
- char _slash='\0';
- int _i=0;
- if (ofBC27small_eiffel_directory==0){
- ofBC27small_eiffel_directory=1;
- R=rT40get_environment_variable(C,(T0 *)ms14);
- /*IF*/if (!(R)) {
- R=rT40clone(C,(T0 *)ms14);
- rT7to_upper((T7*)R);
- R=rT40get_environment_variable(C,R);
- /*IF*/if (((int)R)) {
- rT7to_upper((T7*)(T0 *)ms14);
- }
- /*FI*/}
- /*FI*//*IF*/if (!(R)) {
- R=(T0 *)ms20;
- }
- /*FI*/_i=((T7*)R)->_count;
- while (!((_i)<(0))) {
- _slash=rT7item((T7*)R,_i);
- /*IF*/if ((rT3is_letter(_slash))||(rT3is_digit(_slash))) {
- _i=(_i)-(1);
- }
- else {
- _i=-(1);
- }
- /*FI*/}
- /*IF*/if ((_i)==(0)) {
- rT7extend((T7*)R,'\57');
- }
- else if (!((rT7last((T7*)R))==(_slash))) {
- rT7extend((T7*)R,_slash);
- }
- /*FI*/oRBC27small_eiffel_directory=R;}
- return oRBC27small_eiffel_directory;}
- T0*oRBC1std_output;
- void rT40swap_on_c(T40 *C){
- C->_current_out=(C)->_out_c;
- }
- void rT40put_banner(/*C*/T0 * a1){
- XrT34put_string(a1,(T0 *)ms533);
- XrT34put_string(a1,(T0 *)ms450);
- XrT34put_string(a1,(T0 *)ms534);
- }
- void rT40swap_on_h(T40 *C){
- C->_current_out=(C)->_out_h;
- }
- void rT40put_c_inline_h(T40 *C){
- int _index=0;
- T0 * _c_code=NULL;
- _c_code=rT170expression((T170*)rT272item((T272*)oRBC40stack_args,(C)->_top),1);
- if ((int)_c_code) switch (((T0 *)_c_code)->id) {
- case 76:
- break;
- default:
- _c_code = NULL;
- };_index=rT151fast_index_of((T151*)(C)->_ms_list,_c_code);
- /*IF*/if ((_index)<=(((T151*)(C)->_ms_list)->_upper)) {
- XrT34put_string((C)->_out_h,((T76*)_c_code)->_to_string);
- XrT34put_character((C)->_out_h,'\12');
- rT151put((T151*)(C)->_ms_list,NULL,rT151fast_index_of((T151*)(C)->_ms_list,_c_code));
- }
- /*FI*/}
- void rT40put_c_inline_c(T40 *C){
- int _index=0;
- T0 * _c_code=NULL;
- _c_code=rT170expression((T170*)rT272item((T272*)oRBC40stack_args,(C)->_top),1);
- if ((int)_c_code) switch (((T0 *)_c_code)->id) {
- case 76:
- break;
- default:
- _c_code = NULL;
- };XrT34put_string((C)->_out_c,((T76*)_c_code)->_to_string);
- XrT34put_character((C)->_out_c,'\12');
- _index=rT151fast_index_of((T151*)(C)->_ms_list,_c_code);
- /*IF*/if ((_index)<=(((T151*)(C)->_ms_list)->_upper)) {
- rT151put((T151*)(C)->_ms_list,NULL,_index);
- }
- /*FI*/}
- void rT40conversion(T40 *C,T0 * a1,T0 * a2){
- T0 * _dest_rc=NULL;
- T0 * _src_rc=NULL;
- _src_rc=XrT58run_class(a1);
- _dest_rc=XrT58run_class(a2);
- /*IF*/if (!((C)->_conversion_mem)) {
- C->_conversion_mem=ma(263,0,2,_src_rc,_dest_rc);
- }
- else if (!(rT263fast_has((T263*)(C)->_conversion_mem,_src_rc))) {
- rT263add_last((T263*)(C)->_conversion_mem,_src_rc);
- rT263add_last((T263*)(C)->_conversion_mem,_dest_rc);
- }
- /*FI*//*(IRF3*/(((T7*)oRBC40tmp_string)->_count)=(0);
- /*)*/rT40conversion_name(((T260*)_dest_rc)->_id);
- rT40put_string(C,oRBC40tmp_string);
- }
- void rT40put_c_heading(T40 *C,T0* a1){
- XrT34put_string((C)->_out_h,a1);
- XrT34put_string((C)->_out_h,(T0 *)ms552);
- XrT34put_string((C)->_out_c,a1);
- XrT34put_string((C)->_out_c,(T0 *)ms553);
- rT40swap_on_c(C);
- }
- void rT40put_c_function(T40 *C,T0* a1){
- int _i=0;
- rT40incr_elt_c_count(C,10);
- rT40put_c_heading(C,rT41item((T41*)a1,1));
- _i=2;
- while (!((_i)>(rT41count((T41*)a1)))) {
- XrT34put_string((C)->_out_c,rT41item((T41*)a1,_i));
- XrT34put_character((C)->_out_c,'\12');
- _i=(_i)+(1);
- }
- XrT34put_string((C)->_out_c,(T0 *)ms554);
- }
- void rT40include(T40 *C,T0* a1){
- /*IF*/if (!((C)->_included)) {
- {T41 *n=((T41*)new(41));
- rT41make(n,1,5);
- C->_included=(T0 *)n;}
- rT41clear((T41*)(C)->_included);
- }
- /*FI*//*IF*/if (!(rT41has((T41*)(C)->_included,a1))) {
- /*IF*/if (rT7is_equal((T7*)(T0 *)ms537,a1)) {
- rT40add_c_library(C,(T0 *)ms538);
- }
- /*FI*/rT41add_last((T41*)(C)->_included,a1);
- XrT34put_string((C)->_out_h,(T0 *)ms539);
- XrT34put_string((C)->_out_h,a1);
- XrT34put_string((C)->_out_h,(T0 *)ms540);
- }
- /*FI*/}
- void rT40put_character(T40 *C,char a1){
- XrT34put_character((C)->_current_out,a1);
- }
- void rT40conversion_name(/*C*/int a1){
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1024);
- rT2append_in(a1,oRBC40tmp_string);
- }
- void rT40expanded_attributes(T40 *C,T0* a1,T0 * a2,T0 * a3){
- int _i=0;
- T0 * _at=NULL;
- T0 * _rf=NULL;
- T0 * _a=NULL;
- T0* _wa=NULL;
- _wa=rT260writable_attributes((T260*)XrT58run_class(a3));
- /*IF*/if (((int)_wa)) {
- _i=XrT265count(_wa);
- while (!((_i)==(0))) {
- _a=XrT265item(_wa,_i);
- _at=XrT58run_type(XrT261result_type(_a));
- /*IF*/if (XrT58is_expanded(_at)) {
- /*IF*/if (!(XrT58fast_mapping_c(_at))) {
- _rf=rT50expanded_initializer((T50*)XrT58base_class(_at),_at);
- /*IF*/if (((int)_rf)) {
- rT40stack_push(C,1009);
- XrT265put(oRBC40stack_rf,_a,(C)->_top);
- rT41put((T41*)oRBC40stack_string,a1,(C)->_top);
- XrT81put(oRBC40stack_target,a2,(C)->_top);
- XrT261mapping_c(_rf);
- rT40pop(C);
- }
- /*FI*/}
- /*FI*/}
- /*FI*/_i=(_i)-(1);
- }
- }
- /*FI*/}
- void rT40put_error1(T40 *C,T0* a1,T0 * a2){
- rT40put_string(C,(T0 *)ms1300);
- rT40put_string_c(C,a1);
- rT40put_character(C,'\54');
- rT40put_position(C,a2);
- rT40put_string(C,(T0 *)ms1301);
- }
- void rT40put_extern4(T40 *C,T0* a1,T0* a2,int a3){
- rT40incr_elt_c_count(C,1);
- XrT34put_string((C)->_out_c,a1);
- XrT34put_character((C)->_out_c,'\40');
- XrT34put_string((C)->_out_c,a2);
- XrT34put_character((C)->_out_c,'\133');
- XrT34put_integer((C)->_out_c,a3);
- XrT34put_string((C)->_out_c,(T0 *)ms1046);
- XrT34put_string((C)->_out_h,(T0 *)ms1047);
- XrT34put_string((C)->_out_h,a1);
- XrT34put_character((C)->_out_h,'\40');
- XrT34put_string((C)->_out_h,a2);
- XrT34put_string((C)->_out_h,(T0 *)ms1048);
- }
- void rT40put_extern1(T40 *C,T0* a1){
- rT40incr_elt_c_count(C,1);
- XrT34put_string((C)->_out_h,(T0 *)ms601);
- XrT34put_string((C)->_out_h,a1);
- XrT34put_string((C)->_out_h,(T0 *)ms602);
- XrT34put_string((C)->_out_c,a1);
- XrT34put_string((C)->_out_c,(T0 *)ms603);
- }
- void rT40put_extern3(T40 *C,T0* a1,T0* a2){
- rT40incr_elt_c_count(C,1);
- XrT34put_string((C)->_out_c,(T0 *)ms584);
- XrT34put_string((C)->_out_c,a1);
- XrT34put_string((C)->_out_c,(T0 *)ms585);
- XrT34put_string((C)->_out_c,a2);
- XrT34put_string((C)->_out_c,(T0 *)ms586);
- XrT34put_string((C)->_out_h,(T0 *)ms587);
- XrT34put_string((C)->_out_h,a1);
- XrT34put_string((C)->_out_h,(T0 *)ms588);
- }
- void rT40put_extern2(T40 *C,T0* a1,char a2){
- rT40incr_elt_c_count(C,1);
- XrT34put_string((C)->_out_h,(T0 *)ms691);
- XrT34put_string((C)->_out_h,a1);
- XrT34put_string((C)->_out_h,(T0 *)ms692);
- XrT34put_string((C)->_out_c,a1);
- XrT34put_character((C)->_out_c,'\75');
- XrT34put_character((C)->_out_c,a2);
- XrT34put_string((C)->_out_c,(T0 *)ms693);
- }
- int rT40next_e_old_id(T40 *C){
- int R=0;
- C->_last_e_old_id=((C)->_last_e_old_id)+(1);
- R=(C)->_last_e_old_id;
- return R;
- }
- void rT40update_switch_cltn(T40 *C,T0 * a1,int a2,T0 * a3,T0* a4){
- int _i=0;
- T0* _st=NULL;
- T0 * _switch=NULL;
- /*IF*/if (!((C)->_switch_cltn)) {
- {T270 *n=((T270*)new(270));
- rT270make(n,a2,a2);
- C->_switch_cltn=(T0 *)n;}
- }
- else if (!(rT270valid_index((T270*)(C)->_switch_cltn,a2))) {
- rT270force((T270*)(C)->_switch_cltn,NULL,a2);
- }
- /*FI*/_st=rT270item((T270*)(C)->_switch_cltn,a2);
- /*IF*/if (!(_st)) {
- {T269 *n=((T269*)new(269));
- rT269make(n,a1,a3,a4);
- _switch=(T0 *)n;}
- rT270put((T270*)(C)->_switch_cltn,ma(271,0,1,_switch),a2);
- }
- else {
- _i=((T271*)_st)->_lower;
- while (!(((_i)>(((T271*)_st)->_upper))||(XrT67is_equal(((T269*)rT271item((T271*)_st,_i))->_name,a3)))) {
- _i=(_i)+(1);
- }
- /*IF*/if ((_i)>(((T271*)_st)->_upper)) {
- {T269 *n=((T269*)new(269));
- rT269make(n,a1,a3,a4);
- _switch=(T0 *)n;}
- rT271add_last((T271*)_st,_switch);
- }
- /*FI*/}
- /*FI*/}
- void rT40push_local_expanded(T40 *C,T0* a1){
- rT40stack_push(C,1008);
- rT41put((T41*)oRBC40stack_string,a1,(C)->_top);
- C->_direct_call_count=((C)->_direct_call_count)+(1);
- }
- void rT40inspect_decr(T40 *C){
- C->_inspect_level=((C)->_inspect_level)-(1);
- }
- void rT40put_goto_label(T40 *C,int a1){
- rT40put_string(C,(T0 *)ms1298);
- rT40put_integer(C,a1);
- rT40put_string(C,(T0 *)ms1299);
- }
- void rT40put_goto(T40 *C,int a1){
- rT40put_string(C,(T0 *)ms1291);
- rT40put_integer(C,a1);
- rT40put_string(C,(T0 *)ms1292);
- }
- void rT40inspect_incr(T40 *C){
- C->_inspect_level=((C)->_inspect_level)+(1);
- }
- void rT40put_generator(T40 *C,T0 * a1){
- C->_generator_used=1;
- rT40put_string(C,(T0 *)ms1179);
- /*IF*/if (XrT58is_reference(a1)) {
- rT40put_target(C);
- rT40put_string(C,(T0 *)ms1180);
- }
- else {
- rT40put_target(C);
- rT40put_character(C,'\54');
- rT40put_integer(C,XrT58id(a1));
- rT40put_string(C,(T0 *)ms1181);
- }
- /*FI*/rT40put_string(C,(T0 *)ms1182);
- }
- void rT40put_generating_type(T40 *C,T0 * a1){
- C->_generator_used=1;
- C->_generating_type_used=1;
- rT40put_string(C,(T0 *)ms1163);
- /*IF*/if (XrT58is_reference(a1)) {
- rT40put_target(C);
- rT40put_string(C,(T0 *)ms1176);
- }
- else {
- rT40put_target(C);
- rT40put_character(C,'\54');
- rT40put_integer(C,XrT58id(a1));
- rT40put_character(C,'\51');
- }
- /*FI*/rT40put_string(C,(T0 *)ms1177);
- }
- void rT40use_switch(T40 *C,T0 * a1,T0* a2,T0 * a3,T0 * a4){
- T0 * _name=NULL;
- int _switch_id=0;
- T0 * _target_type=NULL;
- T0* _n=NULL;
- _n=XrT67to_string(XrT261name(a1));
- /*IF*/if (rT7is_equal((T7*)(T0 *)ms1162,_n)) {
- rT40push_direct(C,a1,a3,a4);
- rT40put_generating_type(C,XrT261current_type(a1));
- rT40pop(C);
- }
- else if (rT7is_equal((T7*)(T0 *)ms1178,_n)) {
- rT40push_direct(C,a1,a3,a4);
- rT40put_generator(C,XrT261current_type(a1));
- rT40pop(C);
- }
- else {
- C->_switch_count=((C)->_switch_count)+(1);
- _target_type=XrT58run_type(XrT68result_type(a3));
- _switch_id=XrT58id(_target_type);
- _name=XrT261name(a1);
- rT40update_switch_cltn(C,_target_type,_switch_id,_name,a2);
- XrT34put_string((C)->_out_c,(T0 *)ms1183);
- XrT34put_integer((C)->_out_c,_switch_id);
- XrT67mapping_c(_name);
- XrT34put_character((C)->_out_c,'\50');
- /*IF*/if (rT44no_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_position(C,XrT68start_position(a3));
- XrT34put_character((C)->_out_c,'\54');
- }
- /*FI*/XrT68compile_to_c(a3);
- /*IF*/if (((int)a4)) {
- XrT34put_character((C)->_out_c,'\54');
- rT170compile_to_c((T170*)a4,XrT261arguments(a1));
- }
- /*FI*/rT40put_character(C,'\51');
- /*IF*/if (!(XrT261result_type(a1))) {
- rT40put_semicolon(C);
- }
- /*FI*/}
- /*FI*/}
- void rT40push_check(T40 *C,T0 * a1,T0 * a2,T0 * a3){
- rT40stack_push(C,1005);
- XrT265put(oRBC40stack_rf,a1,(C)->_top);
- XrT81put(oRBC40stack_target,a2,(C)->_top);
- rT272put((T272*)oRBC40stack_args,a3,(C)->_top);
- }
- void rT40push_void(T40 *C,T0 * a1,T0 * a2,T0 * a3){
- rT40stack_push(C,1003);
- XrT265put(oRBC40stack_rf,a1,(C)->_top);
- XrT81put(oRBC40stack_target,a2,(C)->_top);
- rT272put((T272*)oRBC40stack_args,a3,(C)->_top);
- C->_sure_void_count=((C)->_sure_void_count)+(1);
- }
- void rT40push_direct(T40 *C,T0 * a1,T0 * a2,T0 * a3){
- rT40stack_push(C,1004);
- XrT265put(oRBC40stack_rf,a1,(C)->_top);
- XrT81put(oRBC40stack_target,a2,(C)->_top);
- rT272put((T272*)oRBC40stack_args,a3,(C)->_top);
- C->_direct_call_count=((C)->_direct_call_count)+(1);
- }
- void rT40push_new(T40 *C,T0 * a1,T0 * a2){
- rT40stack_push(C,1007);
- XrT265put(oRBC40stack_rf,a1,(C)->_top);
- rT272put((T272*)oRBC40stack_args,a2,(C)->_top);
- C->_direct_call_count=((C)->_direct_call_count)+(1);
- }
- void rT40push_switch(T40 *C,T0 * a1,T0 * a2){
- rT40stack_push(C,1006);
- XrT265put(oRBC40stack_rf,a1,(C)->_top);
- rT271put((T271*)oRBC40stack_switch,a2,(C)->_top);
- }
- void rT40put_inspect(T40 *C){
- rT40put_string(C,(T0 *)ms1286);
- rT40put_integer(C,(C)->_inspect_level);
- }
- void rT40put_is_expanded_type(T40 *C,T0 * a1){
- /*IF*/if (XrT58is_expanded(a1)) {
- rT40put_character(C,'1');
- }
- else {
- rT40put_character(C,'0');
- }
- /*FI*/}
- void rT40put_integer(T40 *C,int a1){
- XrT34put_integer((C)->_current_out,a1);
- }
- void rT40put_in_c_string(T40 *C,char a1){
- /*IF*/if ((a1)==('\12')) {
- rT40put_string(C,(T0 *)ms828);
- }
- else if ((a1)==('\134')) {
- rT40put_string(C,(T0 *)ms829);
- }
- else if ((a1)==('\42')) {
- rT40put_string(C,(T0 *)ms830);
- }
- else if ((a1)==('\47')) {
- rT40put_string(C,(T0 *)ms831);
- }
- else if (((((unsigned char)a1))<(32))||((122)<(((unsigned char)a1)))) {
- rT40put_character(C,'\134');
- rT40put_integer(C,rT2to_octal(((unsigned char)a1)));
- rT40put_string(C,(T0 *)ms835);
- }
- else {
- rT40put_character(C,a1);
- }
- /*FI*/}
- int ofBC27rescue_evobt=0;
- void rT40rescue_evobt(/*C*/T0 * a1){
- if (ofBC27rescue_evobt==0){
- ofBC27rescue_evobt=1;
- /*UT*/(T45*)oRBC27eh;
- rT45add_type(a1,(T0 *)ms1172);
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms1173);
- rT45print_as_warning((T45*)oRBC27eh);
- rT260set_at_run_time((T260*)XrT58run_class(a1));
- }
- }
- void rT40rs_pop_position(T40 *C){
- /*IF*/if (rT44no_check((T44*)oRBC27eiffel_run_control)) {
- rT40put_string(C,(T0 *)ms1269);
- }
- /*FI*/}
- void rT40tmp_string_object_library(T40 *C){
- int _i=0;
- /*IF*/if (((int)(C)->_c_object_list)) {
- _i=((T41*)(C)->_c_object_list)->_lower;
- while (!((_i)>(((T41*)(C)->_c_object_list)->_upper))) {
- rT7extend((T7*)oRBC40tmp_string,'\40');
- rT7append((T7*)oRBC40tmp_string,rT41item((T41*)(C)->_c_object_list,_i));
- _i=(_i)+(1);
- }
- }
- /*FI*//*IF*/if (((int)(C)->_c_library_list)) {
- _i=((T41*)(C)->_c_library_list)->_lower;
- while (!((_i)>(((T41*)(C)->_c_library_list)->_upper))) {
- rT7extend((T7*)oRBC40tmp_string,'\40');
- rT7append((T7*)oRBC40tmp_string,rT41item((T41*)(C)->_c_library_list,_i));
- _i=(_i)+(1);
- }
- }
- /*FI*/}
- void rT40tmp_string_output(T40 *C){
- /*IF*/if (((int)(C)->_output_name)) {
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1102);
- rT7append((T7*)oRBC40tmp_string,(C)->_output_name);
- rT7extend((T7*)oRBC40tmp_string,'\40');
- }
- /*FI*/}
- void rT40tmp_string_gcc(T40 *C){
- /*(IRF3*/(((T7*)oRBC40tmp_string)->_count)=(0);
- /*)*//*IF*/if ((C)->_cc_used) {
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1098);
- }
- else {
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1099);
- /*IF*/if ((rT40directory_separator(C))!=('\134')) {
- rT7append((T7*)oRBC40tmp_string,(T0 *)ms1100);
- }
- /*FI*/}
- /*FI*//*IF*/if (((int)(C)->_c_compiler_options)) {
- rT7append((T7*)oRBC40tmp_string,(C)->_c_compiler_options);
- }
- /*FI*/}
- T0*oRBC40tmp_string;
- void rT40put_local_name(T40 *C,T0* a1){
- XrT34put_character((C)->_out_c,'\137');
- XrT34put_string((C)->_out_c,a1);
- }
- void rT40put_lines(T40 *C,T0* a1){
- int _i=0;
- _i=((T41*)a1)->_lower;
- while (!((_i)>(((T41*)a1)->_upper))) {
- XrT34put_string((C)->_current_out,rT41item((T41*)a1,_i));
- XrT34put_character((C)->_current_out,'\12');
- _i=(_i)+(1);
- }
- }
- void rT40put_macro_af(T40 *C,T0* a1){
- XrT34put_string((C)->_out_h,(T0 *)ms700);
- XrT34put_string((C)->_out_h,a1);
- XrT34put_character((C)->_out_h,'\12');
- }
- void rT40put_new(T40 *C,T0 * a1){
- rT40put_new_id(C,XrT58id(XrT58run_type(a1)));
- }
- void rT40put_new_id(T40 *C,int a1){
- rT40put_string(C,(T0 *)ms814);
- rT40put_integer(C,a1);
- rT40put_string(C,(T0 *)ms815);
- rT40put_integer(C,a1);
- rT40put_string(C,(T0 *)ms816);
- }
- void rT40rs_unlink(T40 *C){
- rT40put_string(C,(T0 *)ms1388);
- }
- void rT40put_position(T40 *C,T0 * a1){
- /*IF*/if (!(a1)) {
- rT40put_string(C,(T0 *)ms779);
- }
- else {
- rT40put_integer(C,((T46*)a1)->_line);
- rT40put_character(C,'\54');
- rT40put_integer(C,((T46*)a1)->_column);
- rT40put_character(C,'\54');
- rT40put_integer(C,((T50*)rT46base_class((T46*)a1))->_id);
- }
- /*FI*/}
- void rT40rs_push_local(T40 *C,T0* a1,T0 * a2){
- /*(IRF3*/(((T7*)oRBC40tmp_string)->_count)=(0);
- /*)*/rT7extend((T7*)oRBC40tmp_string,'\137');
- rT7append((T7*)oRBC40tmp_string,a1);
- rT40rs_push(C,a1,oRBC40tmp_string,a2);
- }
- void rT40rs_push_result(T40 *C,T0 * a1){
- rT40rs_push(C,(T0 *)ms293,(T0 *)ms1378,a1);
- }
-